home *** CD-ROM | disk | FTP | other *** search
- package sun.misc;
-
- import java.lang.Thread.State;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.Properties;
-
- // $FF: renamed from: sun.misc.VM
- public class class_0 {
- private static boolean suspended = false;
- /** @deprecated */
- @Deprecated
- public static final int STATE_GREEN = 1;
- /** @deprecated */
- @Deprecated
- public static final int STATE_YELLOW = 2;
- /** @deprecated */
- @Deprecated
- public static final int STATE_RED = 3;
- private static volatile boolean booted = false;
- private static long directMemory = 67108864L;
- private static boolean defaultAllowArraySyntax = false;
- private static boolean allowArraySyntax;
- private static volatile int finalRefCount;
- private static volatile int peakFinalRefCount;
- private static Map<Integer, Thread.State> threadStateMap;
- private static Map<Integer, String> threadStateNames;
-
- /** @deprecated */
- @Deprecated
- public static boolean threadsSuspended() {
- return suspended;
- }
-
- public static boolean allowThreadSuspension(ThreadGroup var0, boolean var1) {
- return var0.allowThreadSuspension(var1);
- }
-
- /** @deprecated */
- @Deprecated
- public static boolean suspendThreads() {
- suspended = true;
- return true;
- }
-
- /** @deprecated */
- @Deprecated
- public static void unsuspendThreads() {
- suspended = false;
- }
-
- /** @deprecated */
- @Deprecated
- public static void unsuspendSomeThreads() {
- }
-
- /** @deprecated */
- @Deprecated
- public static final int getState() {
- return 1;
- }
-
- /** @deprecated */
- @Deprecated
- public static void registerVMNotification(VMNotification var0) {
- }
-
- /** @deprecated */
- @Deprecated
- public static void asChange(int var0, int var1) {
- }
-
- /** @deprecated */
- @Deprecated
- public static void asChange_otherthread(int var0, int var1) {
- }
-
- public static void booted() {
- booted = true;
- }
-
- public static boolean isBooted() {
- return booted;
- }
-
- public static long maxDirectMemory() {
- if (booted) {
- return directMemory;
- } else {
- Properties var0 = System.getProperties();
- String var1 = (String)var0.remove("sun.nio.MaxDirectMemorySize");
- System.setProperties(var0);
- if (var1 != null) {
- if (var1.equals("-1")) {
- directMemory = Runtime.getRuntime().maxMemory();
- } else {
- long var2 = Long.parseLong(var1);
- if (var2 > -1L) {
- directMemory = var2;
- }
- }
- }
-
- return directMemory;
- }
- }
-
- public static boolean allowArraySyntax() {
- if (!booted) {
- String var0 = System.getProperty("sun.lang.ClassLoader.allowArraySyntax");
- allowArraySyntax = var0 == null ? defaultAllowArraySyntax : Boolean.parseBoolean(var0);
- }
-
- return allowArraySyntax;
- }
-
- public static void initializeOSEnvironment() {
- if (!booted) {
- OSEnvironment.initialize();
- }
-
- }
-
- public static int getFinalRefCount() {
- return finalRefCount;
- }
-
- public static int getPeakFinalRefCount() {
- return peakFinalRefCount;
- }
-
- public static void addFinalRefCount(int var0) {
- finalRefCount += var0;
- if (finalRefCount > peakFinalRefCount) {
- peakFinalRefCount = finalRefCount;
- }
-
- }
-
- public static Thread.State toThreadState(int var0) {
- initThreadStateMap();
- Thread.State var1 = (Thread.State)threadStateMap.get(var0);
- if (var1 == null) {
- var1 = State.RUNNABLE;
- }
-
- return var1;
- }
-
- private static synchronized void initThreadStateMap() {
- if (threadStateMap == null) {
- Thread.State[] var0 = State.values();
- int[][] var1 = new int[var0.length][];
- String[][] var2 = new String[var0.length][];
- getThreadStateValues(var1, var2);
- threadStateMap = new HashMap();
- threadStateNames = new HashMap();
-
- for(int var3 = 0; var3 < var0.length; ++var3) {
- String var4 = var0[var3].name();
- int[] var5 = null;
- String[] var6 = null;
-
- for(int var7 = 0; var7 < var0.length; ++var7) {
- if (var2[var7][0].startsWith(var4)) {
- var5 = var1[var7];
- var6 = var2[var7];
- }
- }
-
- if (var5 == null) {
- throw new InternalError("No VM thread state mapped to " + var4);
- }
-
- if (var5.length != var6.length) {
- throw new InternalError("VM thread state values and names mapped to " + var4 + ": length not matched");
- }
-
- for(int var8 = 0; var8 < var5.length; ++var8) {
- threadStateMap.put(var5[var8], var0[var3]);
- threadStateNames.put(var5[var8], var6[var8]);
- }
- }
-
- }
- }
-
- private static native void getThreadStateValues(int[][] var0, String[][] var1);
-
- private static native void initialize();
-
- static {
- allowArraySyntax = defaultAllowArraySyntax;
- finalRefCount = 0;
- peakFinalRefCount = 0;
- threadStateMap = null;
- threadStateNames = null;
- initialize();
- }
- }
-